
#pragma once

#include <stdio.h>
#include <string.h>
#include <assert.h>
#include <stdbool.h>
#include <stdlib.h>

typedef int LTDataType;

typedef struct ListNode {
	LTDataType data;
	struct ListNode* next;
	struct ListNode* prev;
}LTNode;
	

LTNode* LTBuyNode(LTDataType x);

//void LTInit(LTNode** phead);
LTNode* LTInit();

void LTPushBack(LTNode* phead, LTDataType x);

void LTPushFront(LTNode* phead, LTDataType x);

bool LTEmpty(LTNode* phead);

void LTPopBack(LTNode* phead);

void LTPopFront(LTNode* phead);

void LTPrint(LTNode* phead);

LTNode* LTFind(LTNode* phead, LTDataType x);

void LTInsert(LTNode* pos, LTDataType x);

void LTErase(LTNode* ppos);

//void LTDestroy(LTNode** pphead);
void LTDestroy(LTNode* phead);




